package com.yeskery.nut.extend.mcp.server;

import com.yeskery.nut.core.Execution;
import com.yeskery.nut.core.Request;
import com.yeskery.nut.core.Response;

/**
 * MCP消息请求元数据
 * @author sprout
 * 2025-04-21 09:51
 */
public class McpRequestMetadata {

    /** Mcp会话 */
    private McpServerSession mcpServerSession;

    /** 请求 */
    private Request request;

    /** 响应 */
    private Response response;

    /** 执行接口 */
    private Execution execution;

    /**
     * 获取Mcp会话
     * @return Mcp会话
     */
    public McpServerSession getMcpServerSession() {
        return mcpServerSession;
    }

    /**
     * 设置Mcp会话
     * @param mcpServerSession Mcp会话
     */
    public void setMcpServerSession(McpServerSession mcpServerSession) {
        this.mcpServerSession = mcpServerSession;
    }

    /**
     * 获取请求
     * @return 请求
     */
    public Request getRequest() {
        return request;
    }

    /**
     * 设置请求
     * @param request 请求
     */
    public void setRequest(Request request) {
        this.request = request;
    }

    /**
     * 获取响应
     * @return 响应
     */
    public Response getResponse() {
        return response;
    }

    /**
     * 设置响应
     * @param response 响应
     */
    public void setResponse(Response response) {
        this.response = response;
    }

    /**
     * 获取执行接口
     * @return 执行接口
     */
    public Execution getExecution() {
        return execution;
    }

    /**
     * 设置执行接口
     * @param execution 执行接口
     */
    public void setExecution(Execution execution) {
        this.execution = execution;
    }
}
